package com.datastructure.test.subarraycnt;

import java.util.ArrayList;

public class SubarrayCnt {

    public static void main(String[] args) {
        SubarrayCnt subarrayCnt = new SubarrayCnt();
        ArrayList<Integer> nums = new ArrayList<>();
        nums.add(10);
        nums.add(5);
        nums.add(3);
        nums.add(7);
        int cnt = subarrayCnt.subarrayCnt(nums, 100);
        System.out.println(cnt);
    }

    public int subarrayCnt (ArrayList<Integer> nums, int k) {
        // write code here
        int left = 0, right = 0;
        int ans = 0;
        int s = 1;
        while (right < nums.size()) {
            int a = nums.get(right++);
            s = s * a;
            while (s >= k && left < right) {
                int b =nums.get(left++);
                s = s / b;
            }
            ans = ans + right - left;
        }
        return ans;
    }
}
